Goto

Collaborating Authors

 automatic program synthesis


Automatic Program Synthesis of Long Programs with a Learned Garbage Collector

Neural Information Processing Systems

We consider the problem of generating automatic code given sample input-output pairs. We train a neural network to map from the current state and the outputs to the program's next statement. The neural network optimizes multiple tasks concurrently: the next operation out of a set of high level commands, the operands of the next statement, and which variables can be dropped from memory. Using our method we are able to create programs that are more than twice as long as existing state-of-the-art solutions, while improving the success rate for comparable lengths, and cutting the run-time by two orders of magnitude. Our code, including an implementation of various literature baselines, is publicly available at https://github.com/amitz25/PCCoder



Reviews: Automatic Program Synthesis of Long Programs with a Learned Garbage Collector

Neural Information Processing Systems

The paper presents a modification of a previous baseline method in the application area of inductive program synthesis (IPS). This new architecture, PCCoder, shows some considerable improvement over DeepCoder, the baseline main method it compared against. Within the setting of IPS, the goal of the model is, provided with some input/output examples meant to represent a partial program specification, output a program that successfully maps from input to output for each I/O example in the set. A program is considered correct if it accomplishes the mapping on all provided I/O pairs (there is no notion of generalization to unseen I/O pairs as sometimes done in previous work, especially in string processing domains). The input/output pairs consist of integers, and the program is constructed from the relatively expressive Domain Specific Language defined in the DeepCoder paper.


Improved Tree Search for Automatic Program Synthesis

arXiv.org Artificial Intelligence

However, as reported by previous work (Zohar & Wolf, 2018; Chen et al., 2019), employing a reinforcement learning In the task of automatic program synthesis, one approach, as opposed to training using a maximum likelihood obtains pairs of matching inputs and outputs and loss to generate the single program that is available generates a computer program, in a particular as the ground truth, either hurts performance or leads to a domain-specific language (DSL), which given small increase in performance. This is despite training the each sample input returns the matching output. A MLE approach in a teacher-forcing way, in which, during key element is being able to perform an efficient training and unlike during test time, the partial programs search in the space of valid programs. Here, we considered are the prefix of the ground truth programs.


Automatic Program Synthesis of Long Programs with a Learned Garbage Collector

Neural Information Processing Systems

We consider the problem of generating automatic code given sample input-output pairs. We train a neural network to map from the current state and the outputs to the program's next statement. The neural network optimizes multiple tasks concurrently: the next operation out of a set of high level commands, the operands of the next statement, and which variables can be dropped from memory. Using our method we are able to create programs that are more than twice as long as existing state-of-the-art solutions, while improving the success rate for comparable lengths, and cutting the run-time by two orders of magnitude. Our code, including an implementation of various literature baselines, is publicly available at https://github.com/amitz25/PCCoder


Automatic Program Synthesis of Long Programs with a Learned Garbage Collector

Neural Information Processing Systems

We consider the problem of generating automatic code given sample input-output pairs. We train a neural network to map from the current state and the outputs to the program's next statement. The neural network optimizes multiple tasks concurrently: the next operation out of a set of high level commands, the operands of the next statement, and which variables can be dropped from memory. Using our method we are able to create programs that are more than twice as long as existing state-of-the-art solutions, while improving the success rate for comparable lengths, and cutting the run-time by two orders of magnitude. Our code, including an implementation of various literature baselines, is publicly available at https: //github.com/amitz25/PCCoder


Automatic Program Synthesis of Long Programs with a Learned Garbage Collector

Neural Information Processing Systems

We consider the problem of generating automatic code given sample input-output pairs. We train a neural network to map from the current state and the outputs to the program's next statement. The neural network optimizes multiple tasks concurrently: the next operation out of a set of high level commands, the operands of the next statement, and which variables can be dropped from memory. Using our method we are able to create programs that are more than twice as long as existing state-of-the-art solutions, while improving the success rate for comparable lengths, and cutting the run-time by two orders of magnitude. Our code, including an implementation of various literature baselines, is publicly available at https: //github.com/amitz25/PCCoder


Automatic Program Synthesis of Long Programs with a Learned Garbage Collector

arXiv.org Machine Learning

We consider the problem of generating automatic code given sample input-output pairs. We train a neural network to map from the current state and the outputs to the program's next statement. The neural network optimizes multiple tasks concurrently: the next operation out of a set of high level commands, the operands of the next statement, and which variables can be dropped from memory. Using our method we are able to create programs that are more than twice as long as existing state-of-the-art solutions, while improving the success rate for comparable lengths, and cutting the run-time by two orders of magnitude. Our code is publicly available at https://github.com/amitz25/PCCoder